package com.ruoyi.function.mapper;

import java.math.BigDecimal;
import java.util.List;
import com.ruoyi.function.domain.Technician;
import com.ruoyi.function.domain.bo.TechnicianSearchReqBo;
import com.ruoyi.function.domain.vo.TechnicianVo;
import org.apache.ibatis.annotations.Param;

/**
 * 技师Mapper接口
 * 
 * @author ruoyi
 * @date 2025-03-18
 */
public interface TechnicianMapper 
{
    /**
     * 查询技师
     * 
     * @param id 技师主键
     * @return 技师
     */
    public Technician selectTechnicianById(Long id);

    /**
     * 查询技师列表
     * 
     * @param technician 技师
     * @return 技师集合
     */
    public List<Technician> selectTechnicianList(Technician technician);

    /**
     * 新增技师
     * 
     * @param technician 技师
     * @return 结果
     */
    public int insertTechnician(Technician technician);

    /**
     * 修改技师
     * 
     * @param technician 技师
     * @return 结果
     */
    public int updateTechnician(Technician technician);

    /**
     * 删除技师
     * 
     * @param id 技师主键
     * @return 结果
     */
    public int deleteTechnicianById(Long id);

    /**
     * 批量删除技师
     * 
     * @param ids 需要删除的数据主键集合
     * @return 结果
     */
    public int deleteTechnicianByIds(Long[] ids);

    Technician selectByUserId(Long userId);

    List<Technician> selectUserListVo(@Param("bo") TechnicianSearchReqBo bo);

    int updateTechnicianByUserId(Technician technician);

    int upbatchById(@Param("param1") BigDecimal param1,@Param("param2") Long param2);
}
